package com.sqx.modules.trends.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.sqx.modules.goods.entity.Goods;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 用户动态
 *
 * @author wuChang
 * @since 2023-09-26
 */
@Data
public class Trends implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 动态id
     */
    @ApiModelProperty("动态id")
    @TableId(value = "trends_id", type = IdType.AUTO)
    private Long trendsId;

    /**
     * 用户id
     */
    @ApiModelProperty("用户id")
    private Long userId;

    /**
     * 动态图片
     */
    @ApiModelProperty("动态图片")
    private String trendsImage;

    /**
     * 动态内容
     */
    @ApiModelProperty("动态内容")
    private String trendsContent;

    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;

    /**
     * 价格
     */
    @ApiModelProperty("价格")
    private BigDecimal price;

    /**
     * 审核内容
     */
    @ApiModelProperty("审核内容")
    private String auditContent;

    /**
     * 状态 0待审核 1审核通过 2审核不通过
     */
    @ApiModelProperty("状态 0待审核 1审核通过 2审核不通过")
    private Integer status;
    /**
     * 真实浏览量
     */
    @ApiModelProperty("真实浏览量")
    private Integer browseCount;

    /**
     * 视频地址
     */
    @ApiModelProperty("视频地址")
    private String videoUrl;
    /**
     * 省
     */
    @ApiModelProperty("省")
    private String province;
    /**
     * 市
     */
    @ApiModelProperty("市")
    private String city;
    /**
     * 区
     */
    @ApiModelProperty("区")
    private String district;

    /**
     * 经度
     */
    @ApiModelProperty("经度")
    private Double lng;
    /**
     * 经度
     */
    @ApiModelProperty("纬度")
    private Double lat;

    /**
     * 收藏动态的数量
     */
    @ApiModelProperty("收藏动态的数量")
    @TableField(exist = false)
    private Integer collectCount;

    /**
     * 商品id
     */
    @ApiModelProperty("商品id")
    private Long goodId;

    /**
     * 是否推荐： 0否 1是
     */
    @ApiModelProperty(value = "是否推荐： 0否 1是")
    private Integer recommend;

    /**
     * 商品实体
     */
    @ApiModelProperty("商品实体")
    @TableField(exist = false)
    private Goods goods;

    /**
     * 点赞数
     */
    @TableField(exist =false)
    private Integer likeCount;

    /**
     * 评论数
     */
    @TableField(exist =false)
    private Integer commentsCount;

    @TableField(exist = false)
    private Long goodsIds;

    /**
     * 头像
     */
    @ApiModelProperty("头像")
    @TableField(exist = false)
    private String avatar;

    /**
     * 用户名
     */
    @ApiModelProperty("用户名")
    @TableField(exist = false)
    private String userName;

    /**
     * 总点赞数
     */
    @ApiModelProperty("总点赞数")
    private Integer totalLikeCount;

    /**
     * 虚拟点赞数
     */
    @ApiModelProperty("虚拟点赞数")
    private Integer virtualLikeCount;

    /**
     * 真实点赞数
     */
    @ApiModelProperty("真实点赞数")
    private Integer realLikeCount;

    /**
     * 虚拟浏览量
     */
    @ApiModelProperty("虚拟浏览量")
    private Integer virtualViewCount;

    /**
     * 总浏览量
     */
    @ApiModelProperty("总浏览量")
    private Integer totalViewCount;

    /**
     * 1上架  2下架
     */
    @ApiModelProperty("1上架  2下架")
    private Integer isListing;

    /**
     * 是否删除  1删除
     */
    @ApiModelProperty("是否删除  1删除")
    private Integer isDelete;
}
